package com.hc.authority;

import org.springframework.security.core.Authentication;

import javax.servlet.http.HttpServletRequest;

/**
 * 自定义权限校验接口
 */
public interface MyAuthorityPermission {
    /**
     * 权限校验逻辑
     * 当用户登录成功后，通过用户携带的权限集合，验证用户本次访问的路径是否有访问权限
     *
     * @param request 包含请求路径、请求参数、请求作用域
     * @param authentication    用户登录后，SpringSecurity维护用户的登录标记，内部包含登录用户的名称和权限集合
     * @return 有权限返回true；否则返回false
     * access方法，参数是“true“有访问权限，"false"无访问权限
     */
    boolean hasAuthority(HttpServletRequest request, Authentication authentication);
}
